<?php

/**
 * Created by PhpStorm.
 * User: Administrator
 * Date: 2019/8/20
 * Time: 14:52
 */
class 使用PHPExcel导出excel
{

}

vendor("PHPExcel176.PHPExcel");
// Create new PHPExcel object
$objPHPExcel = new PHPExcel();
// Set properties
$objPHPExcel->getProperties()->setCreator("ctos")
    ->setLastModifiedBy("ctos")
    ->setTitle("Office 2007 XLSX Test Document")
    ->setSubject("Office 2007 XLSX Test Document")
    ->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.")
    ->setKeywords("office 2007 openxml php")
    ->setCategory("Test result file");
//set width
$objPHPExcel->getActiveSheet()->getColumnDimension('A')->setWidth(80);
$objPHPExcel->getActiveSheet()->getColumnDimension('B')->setWidth(80);
$objPHPExcel->getActiveSheet()->getColumnDimension('C')->setWidth(80);
$objPHPExcel->getActiveSheet()->getColumnDimension('D')->setWidth(80);
$objPHPExcel->getActiveSheet()->getColumnDimension('E')->setWidth(80);
$objPHPExcel->getActiveSheet()->getColumnDimension('F')->setWidth(80);
//设置行高度
//$objPHPExcel->getActiveSheet()->getRowDimension('1')->setRowHeight(22);
//$objPHPExcel->getActiveSheet()->getRowDimension('2')->setRowHeight(20);
//set font size bold
$objPHPExcel->getActiveSheet()->getDefaultStyle()->getFont()->setSize(10);
//$objPHPExcel->getActiveSheet()->getStyle('A2:F2')->getFont()->setBold(true);
//$objPHPExcel->getActiveSheet()->getStyle('A2:F2')->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);
//$objPHPExcel->getActiveSheet()->getStyle('A2:F2')->getBorders()->getAllBorders()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);
//设置水平居中
//$objPHPExcel->getActiveSheet()->getStyle('A1')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
$objPHPExcel->getActiveSheet()->getStyle('A')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
$objPHPExcel->getActiveSheet()->getStyle('B')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
$objPHPExcel->getActiveSheet()->getStyle('D')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
$objPHPExcel->getActiveSheet()->getStyle('F')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
//合并cell
//$objPHPExcel->getActiveSheet()->mergeCells('A1:F1');
//set font size bold
//$objPHPExcel->getActiveSheet()->getDefaultStyle()->getFont()->setSize(10);
//$objPHPExcel->getActiveSheet()->getStyle('A2:F2')->getFont()->setBold(true);
//$objPHPExcel->getActiveSheet()->getStyle('A2:F2')->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);
//$objPHPExcel->getActiveSheet()->getStyle('A2:F2')->getBorders()->getAllBorders()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);����ˮƽ����
$objPHPExcel->getActiveSheet()->getStyle('A1')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
$objPHPExcel->getActiveSheet()->getStyle('A')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
$objPHPExcel->getActiveSheet()->getStyle('B')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
$objPHPExcel->getActiveSheet()->getStyle('D')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
$objPHPExcel->getActiveSheet()->getStyle('F')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
//�ϲ�cell
$objPHPExcel->getActiveSheet()->mergeCells('A1:F1');
// set table header content
$objPHPExcel->setActiveSheetIndex(0)
    ->setCellValue('A1', iconv("utf-8","gb2312","订单数据汇总  时间:'.date('Y-m-d H:i:s')"))
    ->setCellValue('A2', iconv("utf-8","gb2312","订单ID"))
    ->setCellValue('B2', iconv("utf-8","gb2312","下单人"))
    ->setCellValue('C2', iconv("utf-8","gb2312","客户名称"))
    ->setCellValue('D2', iconv("utf-8","gb2312","下单时间"))
    ->setCellValue('E2', iconv("utf-8","gb2312","需求机型"))
    ->setCellValue('F2', iconv("utf-8","gb2312","需求数量"));
// Miscellaneous glyphs, UTF-8
for($i=0;$i<count($OrdersData)-1;$i++){
    $objPHPExcel->getActiveSheet(0)->setCellValue('A'.($i+3),  iconv("utf-8","gb2312",$OrdersData[$i]['id']));
    $objPHPExcel->getActiveSheet(0)->setCellValue('B'.($i+3),  iconv("utf-8","gb2312",$OrdersData[$i]['reid']));
    $objPHPExcel->getActiveSheet(0)->setCellValue('C'.($i+3),  iconv("utf-8","gb2312",$OrdersData[$i]['topid']));
    //$objPHPExcel->getActiveSheet(0)->setCellValue('D'.($i+3), iconv('utf-8','gb2312',toDate($OrdersData[$i]['typename']))); //���������common.php������
    $objPHPExcel->getActiveSheet(0)->setCellValue('D'.($i+3),  iconv("utf-8","gb2312",$OrdersData[$i]['typename']));
    $objPHPExcel->getActiveSheet(0)->setCellValue('E'.($i+3),  iconv("utf-8","gb2312",$OrdersData[$i]['typelink']));
    $objPHPExcel->getActiveSheet(0)->setCellValue('F'.($i+3),  iconv("utf-8","gb2312",$OrdersData[$i]['keyword']));
    //$objPHPExcel->getActiveSheet()->getStyle('A'.($i+3).':F'.($i+3))->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);
    //$objPHPExcel->getActiveSheet()->getStyle('A'.($i+3).':F'.($i+3))->getBorders()->getAllBorders()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);
    //$objPHPExcel->getActiveSheet()->getRowDimension($i+3)->setRowHeight(16);
}
//  sheet
$objPHPExcel->getActiveSheet()->setTitle( iconv("utf-8","gb2312",'订单汇总表'));
// Set active sheet index to the first sheet, so Excel opens this as the first sheet
$objPHPExcel->setActiveSheetIndex(0);
// excel头参数
header('Content-Type: application/vnd.ms-excel; charset=utf-8');
header('Content-Type: application/force-download');
header('Content-Type: application/octet-stream');
header('Content-Type: application/download');
//header('Content-type:charset=utf-8);
//header('Content-Transfer-Encoding: utf-8');
header('Content-Disposition: attachment;filename='.iconv("utf-8","gb2312","订单汇总".date('Ymd-His').".xls"));  //日期为文件名后缀
//header('Cache-Control: max-age=0');
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'excel5');  //excel5为xls格式，excel2007为xlsx格式
$objWriter->save('php://output');